package com.itheima.health.dao;

import com.itheima.health.pojo.*;
import java.util.List;
import java.util.Map;

/**
 * 预约服务持久层
 */
public interface OrderDao {

    /**
     * 确认用户是否预约过该套餐
     * @param map
     * @return
     */
    List<Order> isOrdered(Map map);


    /**
     * 添加预约信息
     * @param member
     */
    void addOrder(Map member);


    // 预约成功后需要查询的语句如下:↓

    /**
     * 根据orderId查找order信息
     * @param id
     * @return
     */
    Map findByOrderId(Integer id);

    /**
     * 根据套餐id获取套餐名
     * @param setmealId
     * @return
     */
    String getSetmealNameById(Integer setmealId);

    /**
     * 根据memberId获取用户名
     * @param memberId
     * @return
     */
    String getMemberNameByMemberId(Integer memberId);


    /**
     * 查询当日新增预约数量
     * @param today
     * @return
     */
    int getOrderCountOfToday(String today);

    /**
     * 查询特定时间段新增预约数量
     * @param dateMap
     * @return
     */
    int getOrderCountBetweenDates(Map dateMap);

    /**
     * 查询当日到诊人数
     * @param reportDate
     * @return
     */
    int getVisitsCountOfToday(String reportDate);

    /**
     * 查询特定时间段到诊数量
     * @param dateMap
     * @return
     */
    int getVisitsCountBetweenDates(Map dateMap);
}
